Image result for unreal logo
Image result for unreal logo




Introduction


  • Unreal Engine 4 (UE4) is a complete suite of game development tools made by game
    developers, for game developers.
  • From 2D mobile games to console blockbusters and VR
  • Unreal Engine 4 gives you everything you need to start, ship, grow and stand out from the crowd.

Support for virtually every platform and SDK:

image alt text
image alt text



History / Background


  • Developed by Epic Games in 1988
  • Unreal Engine is now FREE (March 2, 2015)
  • Unreal takes a 5% cut after you ship and make $3000.
  • UE4 introduced the new visual scripting Blueprint, successor to UE3's "Kismet"

Popular Games with UE4

external image Ny-M_NwGRuCGaqm9re6HBcPYTFUMrzhl-8i_2C40k2sH6KEUbUpMNZl-zgfOAajPtYwjHVIxSRB3ZxPmVQmaSK0FoFp3iJx3_VVtnCWg86RhhvuaAMrwVCTyf74hixWDgmRbalZxW9w external image kRhjTBTr55Xm1YdQiAKaEdC4FxbclAVYctYvdpnSAnqt8CIZL_MlKyRPCy3zUdg7_FX4w70d9Ju8aZ_EATzb5OhBOzsarQdTvLfsShV0LWIQG46Vt2W5jtc6pc2rrpjA6U3v1AodLAU external image JLD-dEV_hFTjqD0z3pK9saiRspwxGLQ_ALErjWUBUg2JtOQQ32DBp304S0WQXhM-ZVQ7dQGEZ2lzlaWTao8LuvDx221SwMQamOPk_EHf36rhxNkEgIjR3JGIjD1UD94sGwm7-1aWEqY

  • Unreal Tournament
  • BioShock
  • Gears Of War 4
  • Street Fighter 5
  • Kingdom Hearts 3
  • Final Fantasy 7 Remake
  • Ace Combat 7
  • Dragon Quest 11
  • Psychonauts 2

Blueprints


  • Blueprints create less of a divide between technical artists, designers, and programmers.
  • Visual scripting using nodes, drag and drop.
  • Controls game logic

Examples:


  • Health bar, taking damage
  • Scripting events: haunted house with levitating objects
  • Goals: check when a puzzle has been solved

Health and taking damage blueprint sample
Health and taking damage blueprint sample


Pros/Cons:


  • Don't have to learn C++, but still have to learn blueprints
  • Can't optimize code
  • Can be 10x slower than C++, but only noticeable in heavy processing games

C++


  • Setup a project in C++
  • Ability to add C++ Classes
    • Choose a parent class
    • Create .h and .cpp files
    • Add components to give a class properties

C++ and Blueprints Together


  • Programmers: C++
  • Artists/Designers: Blueprint
  • Blueprints can be used to extend C++ files and vice versa

Animation and Characters


  1. Create Skeletal Mesh
  2. Create Blend Animations
  3. Create Animation Blueprint
    • Animation Graphs
    • Event Graphs
external image 4F_caCmfdC32sCarnt_6rWT7jdudC-0dI9OsVfxKFQLO03hT224MjxQPM3gleTTcGrnWv5JtZknlz7U1yfw3Pq0y3mwgyh-JowMQvaJG00G9lZtUUBtSkRg75_zvaIz4cWCSXJl1C94

Skeletal Meshes


  • Meshes are your character models
  • They have a "rig" that can be animated
  • Rigs can store multiple pre-made animations that are made for the rig

external image hmEo471fMB-DUnNDvfk3s2VXC9MsFhJZRQmfxjOA8J-SQWj3WV6ZgU3u2hKhOqO2IvFX89rzqsiy1fUwTnx8V5Q92WMM66nyULnp51ZIBEVIOKGDhspai2K83bDSiww0gNdfSwsP_40external image FEZfFuPSLbVHO0T6_KnPCaa9UbAUP1FB6UcJdvYDYG5P_rMXbyZeSc87mwUGEVkTDldfO2_Xi0bsU03QEMaS4TMtcJPFYqNSGZBCy6mh3KcVbXxvta_wBUtugrGYUx6htm9iXhTSAgU

Blend Animations


  • This is the way that Unreal blends two different animations together to create a seamless transition

external image 1DlzSCv49qGQHIbucarse6ajU59k_SWd6-D_cUvvO5F7z8oBywLdb4uAXqIhWV_vIpP5c3Yjpmkf76LwXXO_GK4jodAsHpzHVjkWBx4TfRribC84xfl8E56XWWYJEHqWDrSNyIh1s-oexternal image ch-UZ_C-O-nwVBKjLUYK_N3DUEuSeEK26IOg_B_7hfxR56PWo5qkzBTSQLiCW5oJZYQu09UCmw2yauFRuV6-d2fJkL755Fc3QHgSJw7mVu-ONz8cwk5EQJMzO1HPDYwJeisjbPzq3qE


Animation Blueprints


  • There are two main parts to an Animation Blueprint:
    1. The AnimGraph
    2. The EventGraph
    3. Character Blueprint

The AnimGraph

  • takes in all of your animations and the variables that will trigger them to activate
  • place in various blend animations and different "states"

external image hmYYhdNWzNe-4HHQe1OGn9YvmGNFE4J3t3nmkyeR6P-0fYJ-4q0dsilWlwl-vqUP8eeLcPxXpTGOZ8WB44ns-WYD6wG44ya0n4hiwu5Kg3pCneHFQrzMNJpL40_DAJgmz58kqpNL_Nc

The EventGraph

  • checks the status of the state and will update the animation
  • checks if an event has happened and will trigger an updated state from the AnimGraph

external image 54vAgDbU2FCa2NVLBkx_CQ8PlUDnIIoAbWua_E0bZcAgISJm2uD7wF9itvg1Gzim3WqWw4PTVjJi0cfN5KPTMGRgq0TPHXIYRiPtFP2rCGRBxIxbWNMAiX2sXp6EbSiW3s0Nbg1hq18

Character Blueprints

  • are the variables that are specific to your characters that you are using
  • it will determine the camera view (First Person, Third Person etc)
  • Hold key presses and will trigger events that will trigger animations

external image PPN7zRLfM0EZh0Gi8neSXiC3j2D-uXC9Bwq2Oa12dc-GaWT5bb9_epncLQ92kPFOpHHngjIzkPnH1IE1Dv0YrT2U-eCxmw3_Owaou7jKotcK4jlD_lWngRqvap_eQqDZTHDdWLGp3r8

Camera View


  • Create a camera for your character to be 1st person, 3rd person etc.
  • Can be used to create racing games, endless runners, platformers, fighting games

external image MpZcuNzSNGW5B4Ib-hU5Nq05xjEUq9kRWcxn1MfytrMLDksp44vSkS_Ewme54zEeZ-zD_1hV-4MVMv3wrfgVMxrfQvuZ6oLiB_g0wOnJzICTVtug34Xd2rooFj8JjyRrot5m8RpbZho

Keyboard Inputs


  • Control rotations
  • Speed of movement
  • Actions to take when a key is pressed

external image wWnHSZ4-B9DvAp6xcbVVSebxsNb64Lix56l_vKvSX8bLJsEpJVJ0AAf_aVpQIEDigxFXRruQ-VOJPp5RCvsXtmVFANBqMPnnSP8JAoDuNbyVJol3gBxiDc5XuFKwQAT2-4PExmC_hwk

Networking


  • Multiple players can enter an existing space by simply increasing the max player count
  • Blueprints must be configured to replicate in order for events involving those objects to propagate to the server and clients.

Get Started with UE4!




Comparison to Unity


  • Made to be more modular
  • More flexible
  • Networking is substantially easier to work with
  • Less of a divide between programmers and artists/designers